<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
	<HEAD>
		<TITLE>演示js11_1读取xml文件 </TITLE>
	</HEAD>
	<BODY>
		<script type="text/javascript">
		    var isie = true;
		    //所读取xml文件
		    var xmlDoc = getxmlDoc("test.xml");
        	var stuList = xmlDoc.getElementsByTagName("student");
        	// 有数据则写到页面的table中
        	if(stuList.length > 0){
        		document.write('<table>');
	   			for(var i=0; i<stuList.length; i++){
	       			document.write("<tr>");
			        var subList = stuList[i].childNodes;
			        for(var j=0; j<subList.length; j++){
			        	var content = subList[j];
			        	
			        	// 排除文本节点
			        	if(content.nodeType != 3){
			        		// 由于xml节点下的文本属于文本节点。故这里需要使用firstChild来获取文本节点
			        		document.write("<td>" + subList[j].firstChild.nodeValue + "</td>");
			        	}
			        }
			        
			        document.write("</tr>");
			    }
	   			document.write('</table>');
   			}
   			
	        //获取xmlDoc对象，兼容浏览器，参考网上代码
			// 函数的参数xmlFile是文件路径或者url
	        function getxmlDoc(xmlFile) {
	            var xmlDoc;
	            if (window.ActiveXObject) {
	            	// IE
	                xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
	                xmlDoc.async = false;
	                xmlDoc.load(xmlFile);
	            }
	            else if (isFirefox=navigator.userAgent.indexOf("Firefox")>0) { 
	            	// 火狐
	                xmlDoc = document.implementation.createDocument('', '', null);
	                xmlDoc.load(xmlFile);
	            }
	            else{ 
	            	// 谷歌
	              	var xmlhttp = new window.XMLHttpRequest();
	                xmlhttp.open("GET",xmlFile,false);
	                xmlhttp.send(null);
	                if(xmlhttp.readyState == 4){
	                	xmlDoc = xmlhttp.responseXML.documentElement;
	                } 
	            }
	
	            return xmlDoc;
	        } 
	   </script> 
	</BODY>
</HTML>